package com.iscas.tech.vo;

import com.alibaba.fastjson.JSON;
import com.iscas.tech.entity.AtScitegach;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.text.StringEscapeUtils;

import java.util.Date;
import java.util.List;

public class MdWithTechGain {

    @ApiModelProperty("主键ID")
    private Integer id;

    @ApiModelProperty("成果名称")
    private String stTitle;

    @ApiModelProperty("成果所属（填写单位名称或个人姓名）")
    private String stBelong;

    @ApiModelProperty("成果参与人（多人用逗号隔开，如：张三,李四）")
    private String stActor;

    @ApiModelProperty("所在区域")
    private String stArea;

    @ApiModelProperty("联系人")
    private String ctPeople;

    @ApiModelProperty("联系电话")
    private String ctTel;

    @ApiModelProperty("联系邮箱")
    private String ctEmail;

    @ApiModelProperty("成果关键字（用作关键字检索）")
    private String stKeys;

    @ApiModelProperty("成果简介")
    private String stDetail;

    @ApiModelProperty("专利名称")
    private String ptTitle;

    @ApiModelProperty("专利号")
    private String ptNo;

    @ApiModelProperty("发布人id（对应表3的人员id）")
    private Integer stResId;

    @ApiModelProperty("发布时间")
    private Date stResTime;

    @ApiModelProperty("提交交易创建时间")
    private Date createTime;

    @ApiModelProperty("记录人")
    private Integer createTitle;

    @ApiModelProperty("成果所属模块及模块值，允许一个人拥有多个模块及模块值")
    private List<Tag> tagList;

    @ApiModelProperty("成果图片列表")
    private List<AtStpicQueryVo> picList;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getStTitle() {
        return StringEscapeUtils.unescapeHtml4(stTitle);
    }

    public void setStTitle(String stTitle) {
        this.stTitle = stTitle;
    }

    public String getStBelong() {
        return stBelong;
    }

    public void setStBelong(String stBelong) {
        this.stBelong = stBelong;
    }

    public String getStActor() {
        return stActor;
    }

    public void setStActor(String stActor) {
        this.stActor = stActor;
    }

    public String getStArea() {
        return stArea;
    }

    public void setStArea(String stArea) {
        this.stArea = stArea;
    }

    public String getCtPeople() {
        return ctPeople;
    }

    public void setCtPeople(String ctPeople) {
        this.ctPeople = ctPeople;
    }

    public String getCtTel() {
        return ctTel;
    }

    public void setCtTel(String ctTel) {
        this.ctTel = ctTel;
    }

    public String getCtEmail() {
        return ctEmail;
    }

    public void setCtEmail(String ctEmail) {
        this.ctEmail = ctEmail;
    }

    public String getStKeys() {
        return stKeys;
    }

    public void setStKeys(String stKeys) {
        this.stKeys = stKeys;
    }

    public String getStDetail() {
        return StringEscapeUtils.unescapeHtml4(stDetail);
    }

    public void setStDetail(String stDetail) {
        this.stDetail = stDetail;
    }

    public String getPtTitle() {
        return StringEscapeUtils.unescapeHtml4(ptTitle);
    }

    public void setPtTitle(String ptTitle) {
        this.ptTitle = ptTitle;
    }

    public String getPtNo() {
        return ptNo;
    }

    public void setPtNo(String ptNo) {
        this.ptNo = ptNo;
    }

    public Integer getStResId() {
        return stResId;
    }

    public void setStResId(Integer stResId) {
        this.stResId = stResId;
    }

    public Date getStResTime() {
        return stResTime;
    }

    public void setStResTime(Date stResTime) {
        this.stResTime = stResTime;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Integer getCreateTitle() {
        return createTitle;
    }

    public void setCreateTitle(Integer createTitle) {
        this.createTitle = createTitle;
    }

    public List<Tag> getTagList() {
        return tagList;
    }

    public void setTagList(List<Tag> tagList) {
        this.tagList = tagList;
    }

    public List<AtStpicQueryVo> getPicList() {
        return picList;
    }

    public void setPicList(List<AtStpicQueryVo> picList) {
        this.picList = picList;
    }

    public AtScitegach transform() {
        AtScitegach techGain = new AtScitegach();
        techGain.setId(getId());
        techGain.setStTitle(getStTitle());
        techGain.setStBelong(getStBelong());
        techGain.setStActor(getStActor());
        techGain.setStArea(getStArea());
        techGain.setCtPeople(getCtPeople());
        techGain.setCtTel(getCtTel());
        techGain.setCtEmail(getCtEmail());
        techGain.setStKeys(getStKeys());
        techGain.setStDetail(getStDetail());
        techGain.setPtTitle(getPtTitle());
        techGain.setPtNo(getPtNo());
        techGain.setStResid(getStResId());
        techGain.setStRestime(getStResTime());
        techGain.setCreatetime(getCreateTime());
        techGain.setCreatetitle(getCreateTitle());
        return techGain;
    }

    @Override
    public String toString() {
        return JSON.toJSONString(this);
    }
}
